1
เส้นทางสู่เคอร์เนลประสิทธิภาพสูง
AI023Lesson 2
00:00

เส้นทางสู่เคอร์เนลประสิทธิภาพสูงเริ่มต้นจากการเปลี่ยนจาก การเขียนโปรแกรมแบบเน้นการทำงาน การเขียนโปรแกรม (พายทอร์ช อีจี้) เป็น การเขียนโปรแกรมแบบตระหนักถึงฮาร์ดแวร์ การเขียนโปรแกรม ทริตอนทำหน้าที่เป็นสะพานสำคัญในเส้นทางนี้

1. การกำหนดโครงสร้าง

ทริตอนเป็นภาษาและตัวแปลภาษาสำหรับการเขียนโปรแกรมแบบขนาน ออกแบบมาเพื่อให้การเขียนเคอร์เนลคำนวณเฉพาะทางที่มีประสิทธิภาพสูงโดยใช้ไวยากรณ์ของภาษาไพธอนเป็นเรื่องที่เป็นไปได้จริง มันอยู่ในตำแหน่งที่โดดเด่นตรงกลาง:

  • พายทอร์ช อีจี้: ความซับซ้อนสูง ใช้งานง่าย แต่มีการควบคุมฮาร์ดแวร์จำกัด
  • _CUDA C++: ควบคุมได้มากที่สุด แต่มีความซับซ้อนสูง (ต้องจัดการหน่วยความจำร่วมและกระบวนการซิงโครไนซ์ด้วยตนเอง)
  • ทริตอน: ไวยากรณ์แบบไพธอนพร้อม ระดับบล็อก (แบ่งเป็นตาราง) การควบคุม
พายทอร์ช อีจี้ (ความซับซ้อนสูง)ทริตอน (ระดับบล็อก / ขับเคลื่อนโดยตัวแปลภาษา)_CUDA / อะซัมบลี (ระดับต่ำ)

2. แนวคิดแบบแบ่งเป็นตาราง

แตกต่างจาก_CUDA ที่ทำงานที่ระดับ ระดับเธรด ทริตอนใช้แนวทาง แบบแบ่งเป็นบล็อก (แบบตาราง) การเขียนโปรแกรม ซึ่งมีความเกี่ยวข้องโดยเฉพาะกับการเรียนรู้เชิงลึกที่ข้อมูล (เมทริกซ์ แผนที่การสนใจ) ถูกจัดโครงสร้างตามบล็อกโดยธรรมชาติ

3. ความเข้าใจผิดเกี่ยวกับประสิทธิภาพ

ความเข้าใจผิดที่พบบ่อยคือคิดว่าทริตอนเป็นเพียง "พายทอร์ช แต่เร็วกว่า" ในความเป็นจริง มันเป็นแนวทางแยกต่างหาก ผลลัพธ์ด้านประสิทธิภาพเกิดจากความสามารถของนักพัฒนาในการ กำจัดจุดติดขัด (เช่น กำแพงหน่วยความจำ) โดยการรวมการดำเนินการต่าง ๆ เพื่อให้ข้อมูลคงอยู่ในหน่วยความจำบนชิปที่รวดเร็วอย่าง SRAM

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>